<?php
/**
 * コメント承認画面テンプレート
 */
?>
<h2>保留中コメント一覧</h2>
<p>
保留中のコメントを承認/拒否します。<br />
記事のコメント一覧に対する表示・非表示は以下のようになります。<br />
</p>
<dl>
<dt>保留</dt>
<dd>承認が必要な際は表示されません。</dd>
<dt>承認</dt>
<dd>承認の必要に関わらず表示されます。</dd>
<dt>拒否</dt>
<dd>承認の必要に関わらず表示されません。</dd>
</dl>
<p>
コメントの承認状態は、管理メニューの「<a href="<?php printY ('App.Path'); ?>/blog/comment">全コメント一覧</a>」からいつでも変更できます。<br />
</p>

<?php
Y('Helper.loadAction', 'ConnectDB', array(
	'table'=>'blog_comments',
	'query'=>'select',
	'column'=>'count(ID)',
	'where'=>'IsAccept=0',
));

$ComCnt = Y('Helper.list.ConnectDB.com.Result');

if (!$NowPage = (int)Y('Request.Get.Page')) $NowPage = 1;
$ComCnt = $ComCnt['count(ID)'];	// 総件数
$PageCnt = 4;						// １ページの表示件数
$ViewPageCnt = 5;					// ページャー表示数

Y('Helper.loadAction', 'ConnectDB', array(
	'table'=>array ('blog_comments AS a', 'left'=>'blog_articles AS b', 'on'=>'a.ArticleID=b.ID'),
	'query'=>'select',
	'order'=>'RegistTime DESC',
	'column'=>'a.*, b.Title AS ArticleTitle',
	'where'=>'a.IsAccept=0',
	'limit'=>$PageCnt,
	'offset'=>($NowPage-1) * $PageCnt,
));

if (!empty($this->AcceptCount)) {
	print ('<fieldset>'."\n");
	print ('<legend>承認結果</legend>'."\n");
	print ($this->AcceptCount.'件のコメントの承認状態を変更しました。'."\n");
	print ('</fieldset>'."\n");
	print ('<p />'."\n");
}

	print ('<form method="post" action="'.Y('Request.Global.uri').'">'."\n");
	print ('<input type="submit" value="確定" />'."\n");

while ($Com = Y('Helper.list.ConnectDB.com.Result')) {
	print ('<fieldset>'."\n");

	print ('<legend>'.date('Y-m-d H:i:s', $Com['RegistTime']).'&nbsp;-&nbsp;記事「'.$Com['ArticleTitle'].'」に投稿されたコメント</legend>'."\n");

	print ('<label><input id="acp['.$Com['ID'].']" name="acp['.$Com['ID'].']" type="radio" value="0" checked="checked" />保留</label>'."\n");
	print ('<label><input id="acp['.$Com['ID'].']" name="acp['.$Com['ID'].']" type="radio" value="1" />承認</label>'."\n");
	print ('<label><input id="acp['.$Com['ID'].']" name="acp['.$Com['ID'].']" type="radio" value="2" />拒否</label>'."\n");

	print ('<dl>'."\n");

	print ('<dt>投稿者名&nbsp;&nbsp;(URL/メールアドレス)</dt>'."\n");
	print ('<dd>'.htmlspecialchars($Com['Name']).'&nbsp;&nbsp;(&nbsp;');
	if ($Com['URL']) {print (htmlspecialchars($Com['URL']));}
	else {print ('入力なし');}
	print ('&nbsp;/&nbsp;');
	if ($Com['Email']) {print (htmlspecialchars($Com['Email']));}
	else {print ('入力なし');}
	print ('&nbsp;)</dd>'."\n");

	print ('<dt>投稿者ホスト</dt>'."\n");
	print ('<dd>'.$Com['Host'].'</dd>'."\n");

	print ('<dt>コメント本文</dt>'."\n");
	print ('<dd>'.htmlspecialchars($Com['Text']).'</dd>'."\n");

	print ('</dl>'."\n");

	print ('</fieldset>'."\n");
	print ('<p />'."\n");
}

	print ('<input type="submit" value="確定" />'."\n");
?>
</form>

<div>
<?php

// ページ数の計算
$AllPageCnt = ceil($ComCnt / $PageCnt);
if ($NowPage > 1) {
	print ('<span><a href="'.Y('Request.Global.uri').'?page='.($NowPage-1).'">PREV</a></span>'."\n");
}
$HalfPageCnt = floor($ViewPageCnt/2);

if (1 > $_Page = $NowPage - $HalfPageCnt) $_Page = 1;

for ($i = 1; ($_Page <= $AllPageCnt)&&($i < 6); $i++) {
	if ($_Page == $NowPage) {
		print ('<span class="now_page">'.$_Page.'</span>'."\n");
	} else {
		print ('<span class="page"><a href="'.Y('Request.Global.uri').'?page='.$_Page.'">'.$_Page.'</a></span>'."\n");
	}
	$_Page++;
}

print ('<span>('.$ComCnt.'件)</span>'."\n");
if ($NowPage < $AllPageCnt){
	print ('<span><a href="'.Y('Request.Global.uri').'?page='.($NowPage+1).'">NEXT</a></span>'."\n");
}
?>
</div>